Personal protection equipment identification system

ABSTRACT

In some examples, a system includes a display and a computing device coupled to the display. The computing device includes a memory and one or more processors coupled to the memory, and the memory includes instructions that when executed by the one or more processors identify, based on at least an identity of a worker, one or more articles of PPE for the worker to use and display an avatar of the worker, where displaying the avatar includes equipping the avatar with the one or more articles of PPE.

TECHNICAL FIELD

The present disclosure relates to the field of personal protective equipment.

BACKGROUND

In some examples, a worker may be required to wear one or more articles of personal protection equipment (PPE) while performing a certain job function, working in a specific work environment, or the like. For example, a worker may be required to wear at least one of respiratory protection equipment, protective eyewear, protective headwear, hearing protection devices, protective shoes, protective gloves, protective clothing, or any other article of PPE. In some cases, a worker may also be required wear, carry, or otherwise have additional or alternative equipment, such as, for example, a sensor, a tool, a lamp, a global positioning device, or the like while performing a job function or working in a specific work environment.

SUMMARY

The disclosure describes devices, systems, and techniques relating to a personal protection equipment identification system configured to identify one or more articles of personal protection equipment (PPE) for a worker to use and to display an avatar equipped with the one or more articles of PPE identified for the worker to use. In some examples, the one or more articles of PPE for the worker to use may be identified based on at least one of a job function of the worker, a work environment, worker training, or PPE previously worn. The system may enable the worker to confirm that he or she is equipped with the proper one or more articles of PPE for a specific job function or work environment, or that the worker has been properly trained to use the one or more articles of PPE he or she is wearing. In turn, the worker may be empowered to ensure that they are equipped with the proper one or more articles of PPE. In some examples, the system may also be configured to verify that the worker is wearing the proper one or more articles of PPE. In such examples, the system may present an alert if one or more articles of PPE worn by the worker is incorrect or missing, enabling the worker to correct the mistake prior to beginning a job function and/or entering a work environment. Thus, the devices, systems, and techniques described herein may improve the safety, health, accountability, and/or compliance of a worker.

In one example, a system includes a display and a computing device coupled to the display. The computing device includes a memory and one or more processors coupled to the memory, and the memory includes instructions that when executed by the one or more processors identify, based on at least an identity of a worker, one or more articles of PPE for the worker to use and display an avatar of the worker, where displaying the avatar includes equipping the avatar with the one or more articles of PPE.

In another example, a method includes identifying, based on at least an identity of a worker, one or more articles of PPE for the worker to use and displaying an avatar of the worker, where displaying the avatar includes equipping the avatar with the one or more articles of PPE.

In yet another example, a computing device includes a display, a memory, and one or more processors coupled to the memory and the display. The memory includes instructions that when executed by the one or more processors identify, based on at least an identity of a worker, one or more articles of PPE for the worker to use and display an avatar of the worker, where displaying the avatar includes equipping the avatar with the one or more articles of PPE.

The details of one or more examples of the disclosure are set forth in the accompanying drawings and the description below. Other features, objects, and advantages of the disclosure will be apparent from the description and drawings, and from the claims.

BRIEF DESCRIPTION OF DRAWINGS

FIG. 1 is a block diagram illustrating an example computing system that includes a personal protection equipment identification system (PPEIS) for identifying and displaying one or more articles of PPE for a worker.

FIG. 2 is a block diagram providing an operating perspective of PPEIS when hosted as a cloud-based platform capable of supporting multiple, distinct access points and/or work environments having an overall population of workers that are required to wear one or more articles of PPE.

FIG. 3A illustrates an example user interface (UI) that includes an avatar of a worker equipped with one or more articles of PPE identified for the worker to use.

FIG. 3B illustrates another example UI that includes avatars of a worker equipped with one or more articles of PPE identified for the worker to use.

FIG. 4A illustrates an example UI including one or more indications of a received confirmation of the one or more articles of PPE of the avatar of FIG. 3A.

FIG. 4B illustrates example UI including an information window for an article of PPE of the avatar of FIG. 3A.

FIGS. 5A-5D illustrate example UIs indicating verification of the one or more articles of PPE of the avatar of FIG. 3A.

FIG. 6 is a flow diagram illustrating an example technique for displaying an avatar of a worker equipped with one or more articles of PPE identified for a worker to use, according to aspects of this disclosure.

FIG. 7 is a flow diagram illustrating an example technique for verifying one or more articles of PPE worn by a worker in an image with one or more articles of PPE identified for a worker to use, according to aspects of this disclosure.

FIG. 8 is a flow diagram illustrating another example technique for verifying one or more articles of PPE worn by a worker in an image with one or more articles of PPE identified for a worker to use, according to aspects of this disclosure.

FIG. 9 is a flow diagram illustrating an example technique for verifying one or more articles of PPE worn by a worker in an image with one or more articles of PPE identified for a worker to use for a confined space environment, according to aspects of this disclosure.

DETAILED DESCRIPTION

The disclosure describes devices, systems, and techniques relating to a personal protection equipment identification system configured to identify one or more articles of personal protection equipment (PPE) for a worker to use and to display an avatar equipped with the one or more articles of PPE identified for the worker to use. The one or more articles of PPE identified for the worker to use may be based on an identity of a worker, such as, for example, selected based on at least one of a job function of the worker, a work environment, worker training, or PPE previously worn. The system may empower the worker to ensure that they are equipped with the proper one or more articles of PPE based on a job function, a work environment, training, or the like. In some examples, the system may also be configured to verify that the worker is wearing the proper one or more articles of PPE. In such examples, the system may present an alert if one or more articles of PPE worn by the worker is incorrect (e.g., based on a size of an article of PPE, training of an article of PPE, or the like) or missing, enabling the worker to correct the mistake prior to beginning a job function and/or entering a work environment. Thus, the devices, systems, and techniques described herein may improve the safety, health, accountability, and/or compliance of a worker.

In some examples, to prepare for a specific job function and/or to enter a work environment, a worker may have to determine one or more articles of PPE required for the job function and/or work environment based on his or her own knowledge of the job function and/or work environment. In some such examples, there may not be an established system configured to help the worker identify the one or more articles of PPE that the worker should be equipped with to perform the job function or to enter the work environment. In other such examples, the worker may not be aware of, or may be misinformed of, the articles of PPE required to perform a job function or enter a work environment, exposing the worker to a greater risk for injury, safety events, health complications, or the like. Moreover, in some examples, the worker may forget to wear, or even avoid wearing, one or more articles of PPE.

In some examples, the worker may additionally, or alternatively, wear one or more articles of PPE that are the incorrect size. If the one or more articles of PPE are not sized correctly, they may not protect the worker as intended. In some examples, the worker may additionally, or alternatively, wear one or more articles of PPE that the worker is not trained to use. When a worker wears an article of PPE that he or she is not properly trained to use, the PPE may be less effective in protecting the health and/or safety of the worker.

In some cases, a supervisor, safety manager, another worker, or the like may verify that a worker is wearing the proper one or more articles of PPE. In some such examples, such a process of verification by another person may decrease the morale of a worker, reduce efficiency, or both. For example, a worker may feel policed by such a verification process and may not feel in control of his or her own health, safety, and/or PPE compliance.

In some examples, the systems, devices, and techniques described herein include a graphic worker interface including a camera that may capture an image of a worker as he or she approaches an entrance to a work environment. In some such examples, the image may be analyzed to identify the worker, determine training records of the worker, determine fit testing records of the worker, or combinations thereof. Such information may be used to identify one or more articles of PPE for the worker to use. An avatar of the worker wearing the identified articles of PPE for the worker to use may be displayed to the worker. The PPE worn by the avatar may correspond to the type and/or model that the worker has been trained to use (e.g., based on the training records of the worker) and/or that is the proper size of PPE for the worker (e.g., based on the fit testing records of the worker). In some cases, the worker may be prompted to compare the PPE he or she is wearing to the articles of PPE worn by the displayed avatar. This may enable the worker to correct any infractions relating to the PPE he or she is wearing and puts the worker in control of ensuring he or she is wearing the correct PPE. The worker interface may optionally identify the type, model, and/or size of the PPE worn by the worker in the captured image, and may provide a notification if a difference is detected between the PPE worn by the worker in the image and the PPE worn by the avatar.

FIG. 1 is a block diagram illustrating an example computing system 2 that includes a personal protection equipment identification system (PPEIS) 6 for identifying and displaying one or more articles of PPE 13A-13N (collectively, “articles of PPE 13”) for a worker to use. As described herein, PPEIS 6 determines one or more articles of PPE for a worker to use prior to a worker entering a work environment 8A, 8B (collectively, “environments 8”) and/or performing a job function. By interacting with PPEIS 6, workers can be informed of one or more articles of PPE that he or she should be equipped with and can confirm that they are properly prepared to enter environments 8. In some examples, PPEIS 6 may also be used to verify that a worker, such as workers 10A-10N (collectively, “workers 10”), is equipped with the correct one or more articles of PPE 13 prior to entering work environments 8 via an access point 14A or 14B (collectively, “access points 14”).

In general, PPEIS 6 may identify one or more articles of PPE for a worker to use, display the one or more articles of PPE for a worker to use, acquire data, monitor, log compliance, generate reports, provide in depth analytics, and generate alerts. For example, PPEIS 6 includes an underlying analytics and alerting system in accordance with various examples described herein, which may be used to alert a worker or another user of one or more articles of PPE that are incorrect or missing from one or more articles of PPE worn by a worker. In some examples, the underlying analytics and alerting system may be used to determine that a worker is wearing the proper size article of PPE, that the worker has been properly trained to use an article of PPE, that all the required articles of PPE are worn by the worker, and/or that a confidence level of the determinations has been achieved.

As further described below, PPEIS 6 provides an integrated suite of PPE determination tools and implements various techniques of this disclosure. That is, PPEIS 6 provides an integrated, end-to-end system for determining one or more articles of PPE that a worker 10A-10N is required to wear and/or for verifying one or more articles of PPE worn by workers 10 prior to allowing the worker to enter one or more environments 8. In some examples, environments 8 may include construction sites, mining, confined spaces, manufacturing sites, or any physical environment. The techniques of this disclosure may be realized within various parts of system 2.

As shown in the example of FIG. 1, system 2 represents a computing environment in which a computing device 16 at access point 14A or 14B, and/or within or proximate to a plurality of environments 8, may electronically communicate with PPEIS 6 via one or more computer networks 4. Each environment 8 represents a physical environment, such as a work environment, in which one or more individuals, such as workers 10, utilize PPE while engaging in tasks or activities within the respective environment. As shown in FIG. 1, each of the environments 8 may have an access point 14 through which workers 10 gain entrance into the environment 8.

In the example of FIG. 1, environment 8A is shown as generally having workers 10, while environment 8B is shown in expanded form to provide more detail. In the example of FIG. 1, a plurality of workers 10B-10N are shown within environment 8B wearing respective articles of PPE 13B-13N. Worker 10C is shown wearing a respective article of PPE 13C at access point 14B outside of environment 8B. As shown, for example, in FIG. 1, each worker 10 may wear a respirator as an article of PPE 13A-13N. In other examples, workers 10 may use one or more additional or alternative articles of PPE 13. In some cases, one or more articles of PPE 13 may be configured to transmit data from a sensor of the one or more articles of PPE 13 to network 4. For example, one or more articles of PPE 13 may be configured to transmit data relating to the usage, the useful life, the status, or the like of the one or more articles of PPE 13 to a device through network 4.

Each of environments 8 may include computing facilities (e.g., a local area network) by which one or more computing devices 16 at access points 14 and/or within environments 8 are able to communicate with PPEIS 6. For example, access points 14 and/or environments 8 may be configured with wireless technology, such as 802.11 wireless networks, 802.15 ZigBee networks, or the like. In the example of FIG. 1, access point 14B and environment 8B include a local network 7 that provides a packet-based transport medium for communicating with PPEIS 6 via network 4. In addition, access point 14B and/or environment 8B may include a plurality of wireless access points 19A-19C geographically distributed throughout access point 14B and/or environment 8B to provide support for wireless communications both inside and outside of access point 14B and/or work environment 8B.

As shown in the example of FIG. 1, an environment, such as environment 8B, may also include one or more wireless-enabled beacons, such as beacons 17A-17C (collectively, “beacons 17”), that provide accurate location information within the work environment. For example, beacons 17 may be GPS-enabled such that a controller within the respective beacon may be able to precisely determine the position of the respective beacon.

In addition, an environment, such as environment 8B, may also include one or more wireless-enabled sensing stations, such as sensing stations 21A and 21B (collectively, “sensing stations 21”). Each sensing station 21 includes one or more sensors and a controller configured to output data indicative of sensed environmental conditions. Moreover, sensing stations 21 may be positioned within respective geographic regions of environment 8B or may otherwise interact with beacons 17 to determine respective positions and may include such positional information when reporting environmental data to PPEIS 6. As such, PPEIS 6 may be configured to correlate the sensed environmental conditions with the particular regions. For example, PPEIS 6 may use the environmental data to aid when generating alerts or other instructions to workers 10 at access point 14B. For instance, PPEIS 6 may use such environmental data to inform workers 10 of environmental conditions he or she may experience upon entrance to work environment 8B. Example environmental conditions that may be sensed by sensing stations 21 include but are not limited to temperature, humidity, presence or absence of a gas, pressure, visibility, wind, or the like.

In some examples, access point 14B and/or environment 8B may also include one or more safety stations 15A, 15B (collectively, “safety stations 15”) for accessing one or more articles of PPE 13, such as the respirators shown in FIG. 1. Safety stations 15 may allow workers 10 to check out one or more articles of PPE 13, exchange a size of one or more articles of PPE 13, exchange data, or the like. In some examples, safety stations 15 may transmit alerts, rules, software updates, and/or firmware updates to one or more articles of PPE 13.

In addition, access points 14 and/or environments 8 may include computing facilities that provide an operating environment for computing devices 16 to interact with PPEIS 6 via network 4. A user 20, such as one of the workers 10, may interact with computing devices 16 to access PPEIS 6 to identify and/or verify one or more articles of PPE 13 required for a specific job function and/or to enter environment 8. In some examples, computing devices 16 include a display 12 for use with PPEIS 6. Additionally, or alternatively, as shown in FIG. 1, a separate display 12 may be included at access point 14B and coupled to computing devices 16, or directly to PPEIS 6. In any case, computing devices 16 and display 12 (or computing devices 16 including display 12) may be connected to PPEIS 6 via local network 7.

Similarly, remote users 24 may use computing devices 18 to interact with PPEIS 6 via network 4. For example, access points 14 and/or environments 8 may include one or more safety managers responsible for overseeing safety compliance, such as PPE compliance of workers 10. In some such examples, remote users 24 may be able to access data acquired by PPEIS 6 such as, for example, PPE compliance information, training information, avatars of workers 10, images of workers 10, or any other data available to PPEIS 6 as described herein. Computing devices 16, 18 may include any suitable computing device, such as, for example, laptops, desktop computers, mobile devices, such as tablets and/or smartphones, or the like.

In one example approach, PPEIS 6 is configured to identify one or more articles of PPE 13A for worker 10A to use. In some such example approaches, PPEIS 6 is configured to identify one or more articles of PPE 13A the worker 10A should don before entering environment 8B. This may occur, for example, when worker 10A is at access point 14B but should occur before worker 10A enters environment 8B. In some examples, the one or more articles of PPE 13A may be identified based on an identity of worker 10A. For example, PPEIS 6 may receive identification information including at least one of an identification number, a username, biometric information, photo recognition information, or voice recognition information of worker 10A, and may use the received information to determine the identity of worker 10A. PPEIS 6 may receive the identification information in any suitable manner. For example, PPEIS 6 may receive the identification information from a worker 10A manually entering the identification information (e.g., using an input device on computing devices 16 or display 12), from a badge or identification card associated with worker 10A (e.g., using radio frequency identification, a barcode, a magnetic stripe, or the like), or by analyzing biometric information of worker 10A such as an image, a voice, a fingerprint, a retina, or the like, or through combinations thereof.

In some examples, PPEIS 6 may identify the one or more articles of PPE 13A for worker 10A to use based on a job function of worker 10A. For example, PPEIS 6 may identify a job function of worker 10A based on the identity of worker 10A. Based on the identified job function of worker 10A, PPEIS 6 may select one or more articles of PPE for worker 10A to use from one or more default articles of PPE. The one or more default articles of PPE may include one or more articles of PPE required for the identified job function of worker 10A. In this way, PPEIS 6 may identify the one or more articles of PPE 13A for worker 10A to use such that worker 10A will be properly equipped with the one or more articles of PPE 13A specific to the job function that worker 10A is scheduled to perform within environment 8B.

Additionally, or alternatively, PPEIS 6 may identify the one or more articles of PPE 13A for worker 10A to use based on one or more articles of PPE that worker 10A is trained to use. For example, PPEIS 6 may select one or more articles of PPE for worker 10A is trained to use based on the determined identity of worker 10. In turn, worker 10A may use the one or more articles of PPE 13A as intended based on that training such that the one or more articles of PPE 13A can maintain the safety and/or health of worker 10A and/or prevent harm to worker 10A due to incorrect use of the one or more articles of PPE 13A.

In some cases, PPEIS 6 may identify the one or more articles of PPE 13A for worker 10A to use based on one or more previously worn articles of PPE. For example, the one or more previously worn articles of PPE 13 may include at least one of an article of PPE 13 previously worn by worker 10A, an article of PPE previously worn within environment 8B, or an article of PPE previously worn for a specific job function (e.g., an article of PPE previously worn for the job function to be performed by worker 10A in environment 8B).

In some example approaches, PPEIS 6 is configured to display an avatar 52 of worker 10A. In some such example approaches, the avatar is designed to reflect the general size and shape of worker 10A while reducing or eliminating the display of characteristics that could be used to identify worker 10A. In some example approaches, the avatar 52 of worker 10A may be equipped with the one or more articles of PPE 13 identified for worker 10A to use. In some examples, PPEIS 6 may store (e.g., in a memory) one or more rendered images of articles of PPE and/or data relating to one or more rendered images of articles of PPE. For example, PPEIS 6 may include a log that stores the one or more rendered images of articles of PPE and/or data relating to the one or more rendered images of articles of PPE, and the log may include articles of PPE required for a specific job function and/or environment 8, trained to use by workers 10, previously worn by workers 10, or the like. In turn, PPEIS 6 may not have to render (e.g., from scratch) the one or more images of articles of PPE 13A for worker 10A to use each time PPEIS 6 displays an avatar 52 of worker 10A equipped with the identified one or more articles of PPE 13A. Instead, in some cases, PPEIS 6 may be able to display the avatar 52 of worker 10A and equip the avatar 52 with the one or more rendered images of articles of PPE (or using data relating to the one or more rendered images of articles of PPE) stored by PPEIS 6. In other examples, PPEIS 6 may render one or more new images of articles of PPE 13A for worker 10A in addition to, or as an alternative to, equipping the avatar 52 of worker 10A with the one or more articles of PPE identified for worker 10A to use.

In a similar manner, PPEIS 6 may display the avatar 52 of worker 10A based on a previously stored avatar 52 of worker 10A, such as based on previously stored avatars 52 of worker 10A and/or data relating to previously stored avatars 52 of worker 10A stored in a memory of PPEIS 6. Thus, in some cases, PPEIS 6 may access a previously stored avatar 52 used to represent worker 10A (or data relating to the previously stored avatar used to represent worker 10A) and equip the previously stored avatar 52 with the one or more articles of PPE 13A identified previously for worker 10A to use. In this way, PPEIS 6 may require less processing time and/or power to display the avatar 52 of worker 10A. In some examples, PPEIS 6 may modify the previously stored avatar of worker 10A. In other examples, PPEIS 6 may equip the previously stored avatar of worker 10A as-is (i.e., without modification).

As another example, PPEIS 6 may be configured to display the avatar 52 of worker 10A based on a previously stored avatar of a worker 10 other than worker 10A. For example, in some cases, PPEIS 6 may not include any previously stored avatars of worker 10A, such as during a first-time worker 10A is using PPEIS 6, and PPEIS 6 may access a previously stored avatar of a worker 10 other than worker 10A to display the avatar for worker 10A. In some examples, displaying the avatar for worker 10A based on a previously stored avatar of another worker 10 may reduce the processing time and/or power of PPEIS 6 needed to display the avatar of worker 10A.

Additionally, or alternatively, PPEIS 6 may render a new avatar (e.g., not based on a previously presented avatar) of worker 10A. In some cases, PPEIS 6 may render a new avatar of worker 10A based on an image of worker 10A. In some such examples, system 2 may optionally include a camera 22 (or another image capture device) to capture an image of worker 10A, such as, for example, when worker 10A is at access point 14B. In some examples, camera 22 may include an Intel® RealSense™ camera available from Intel Corp. of Santa Clara, Calif. As another example, PPEIS 6 may include one or more stored images of worker 10A. In any case, PPEIS 6 may use a stored image, a captured image, or any combination of stored images and/or captured images of worker 10A to render a new avatar 52 for worker 10A based on an image of worker 10A. PPEIS 6, in some examples, may analyze the one or more images of worker 10A to obtain data relating to the image to render the new avatar 52 of worker 10A.

In some examples, the avatar may be configured to resemble worker 10A in at least one of hair color, eye color, height, weight, facial features, skin tone, or attire. For example, one or more images of worker 10A may be analyzed to determine a hair color, an eye color, a height, a weight, facial features, a skin tone, and/or attire of worker 10A to incorporate such features in the rendered avatar. Although the avatar of worker 10A may be configured to resemble worker 10A, in some example approaches, avatar 52 may be a cartoon or otherwise limited rendition of worker 10A and not an actual image of worker 10A. Thus, PPEIS 6 may identify and display the one or more articles of PPE 13A on avatar 52 for worker 10A to view and use, while maintaining the privacy of worker 10A.

Regardless of how PPEIS 6 displays avatar 52 of worker 10A or the one or more articles of PPE 13A for worker 10A to use, in one example approach PPEIS 6 equips the avatar with representations of the one or more articles of PPE 13A identified for worker 10A to use. For example, as described above, the one or more articles of PPE 13A may be identified based on a job function, environment 8B, articles of PPE that worker 10A is trained to use, one or more articles of previously worn PPE, or the like.

In one example approach, display 12 presents the avatar 52 of worker 10A equipped with the article of PPE 13 identified for worker 10A to use prior to worker 10A entering environment 8B and/or while worker 10A is at access point 14B. In this way, worker 10A may use the displayed avatar 52, as equipped with the one or more articles of PPE 13A to ensure that he or she is equipped with the proper one or more articles of PPE 13A prior to entering environment 8B and/or performing a certain job function. Such an approach may enable worker 10A to take control of ensuring that he or she is wearing the proper PPE. In some cases, putting worker 10A in control of his or her own PPE compliance may be more effective in encouraging worker 10A to conform to PPE policies and requirements than having a supervisor, a safety manager, another worker 10, or the like verifying the PPE compliance of worker 10A. Example displays (e.g., user interfaces) of avatars equipped with the one or more identified articles of PPE for the worker to use will be described in more detail with respect to FIGS. 3A and 3B.

In examples in which system 2 includes camera 22 or another image capture device, PPEIS 6 may be configured to display avatar 52 as a moving avatar of worker 10A that is equipped with the one or more articles of PPE 13A for worker 10A to use. In some such examples, PPEIS 6 may periodically or continuously capture images of worker 10A (e.g., using camera 22). PPEIS 6 may compare a first image to a second image, in which the first image was captured at an earlier time than the second image and determine a movement of worker 10A based on the comparison of the first and second images. If a movement of worker 10A is determined, PPEIS 6 may display a moving avatar of worker 10A that mirrors the determined movement of worker 10A. In this way, PPEIS 6 may display a moving avatar of worker 10A such that what is shown on display 12 serves as a mirror reflecting a moving image of worker 10A as worker 10A moves. As one example, PPEIS 6 compares a first image of worker 10A captured by camera 22 to a second image of worker 10A to determine whether worker 10A put on or removed one of the articles of PPE 13A identified for worker 10A to use, and may display a moving avatar putting on or removing that article of PPE.

In some examples, PPEIS 6 may enable worker 10A to confirm that he or she is wearing the one or more articles of PPE 13A on the displayed avatar 52 of worker 10A. In some such cases, system 2 may include one or more input devices, such as, for example, a keyboard, a keypad, a touch screen, or the like. In some examples, display 12 and/or computing devices 16 may include the one or more input devices. Worker 10A may be able to confirm that he or she is wearing the one or more articles of PPE 13A identified by PPEIS 6 using the one or more input devices. PPEIS 6 may enable worker 10A to confirm the one or more articles of PPE 13A in any suitable manner. For example, worker 10A may be able to check off, select, or otherwise indicate using a touch screen of display 12 or another input device that he or she is wearing each article of the one or more articles of PPE 13A worn by the displayed avatar. PPEIS 6 may display an indication of the received confirmation of the one or more articles of PPE (e.g., received by PPEIS 6 from worker 10A using one or more input devices). In some examples, a user other than worker 10A may input confirmation of one or more articles of PPE 13. For example, a supervisor, an attendant, or the like may input the confirmation. Example displays of avatars equipped with the one or more identified articles of PPE including an indication of confirmation received for one or more articles of PPE will be described in more detail with respect to FIGS. 4A and 4B.

In some examples, in addition to, or as an alternative to, PPEIS 6 receiving confirmation from worker 10A, PPEIS 6 may be configured to verify one or more articles of PPE 13A worn by worker 10A. For example, PPEIS 6 may capture an image of worker 10A using camera 22, and may analyze the captured image of worker 10A to identify one or more articles of PPE worn by the worker in the image. The one or more articles of PPE worn by worker 10A in the image may include one or more articles of PPE 13A worn by worker 10A in the captured image. PPEIS 6 may compare the one or more articles of PPE worn by worker 10A in the image to the one or more articles of PPE 13A identified for worker 10A to use (e.g., the one or more articles of PPE 13A equipped on the avatar of worker 10A). The comparison may be used to determine and/or verify that worker 10A is wearing all the articles of PPE 13A identified by PPEIS 6 for worker 10A to use, that the articles of PPE worn by worker 10A in the image are the proper size for worker 10A, that worker 10A is trained to use the articles of PPE worn by worker 10A in the image, a confidence level of the identification accuracy, or the like. Example displays of avatars equipped with the one or more identified articles of PPE and verification of the one or more articles of PPE by PPEIS 6 will be described in more detail with respect to FIGS. 5A-5D.

In this way, verification that the one or more articles of PPE worn by worker 10A in the image correspond to the one or more articles of PPE 13A equipped on the avatar of worker 10A may prevent worker 10A from manually having to verify and/or confirm each article of PPE of the one or more articles of PPE 13A. Moreover, PPEIS 6 may be configured to verify additional or alternative details about the one or more articles of PPE worn by worker 10A that worker 10A may not typically consider. For example, PPEIS 6 may determine the size and/or training history of the one or more articles of PPE worn by worker 10A in the image. In turn, PPEIS 6 may help ensure that worker 10A is equipped with the one or more articles of PPE 13A required for a job function and/or within environment 8B, and that worker 10A is wearing one or more articles of PPE that are the proper size, that worker 10A has been trained to use, or the like, which may improve the safety, health, accountability, and/or compliance of worker 10A.

In some examples, PPEIS 6 integrates a processing platform configured to process thousand or even millions of concurrent streams of compliance and/or verification information from one or more access points 14. An underlying analytics engine of PPEIS 6 may apply historical data and models to the inbound streams to compute confidence levels, identify trends or patterns, apply machine learning algorithms, or the like. PPEIS 6 may also be configured to process streams of information relating to environments 8, such as, for example, environmental conditions and/or safety events of environments 8. Further, PPEIS 6 may provide real-time alerting and reporting to notify workers 10 and/or users 20, 24 of any compliance errors, verification information, low confidence levels, anomalous conditions of environments 8, or the like.

In this way, PPEIS 6 tightly integrates comprehensive tools for managing PPE compliance with an underlying analytics engine and communication system to provide data acquisition, monitoring, activity logging, reporting, behavior analytics, and/or alert generation. Moreover, PPEIS 6 provides a communication system for operation and utilization by and between the various elements of system 2. Users 20, 24 may access PPEIS to view results on any analytics performed by PPEIS 6 on data acquired from workers 10, camera 22, and/or another component as described herein. In some examples, PPEIS 6 may present a web-based interface via a web server (e.g., an HTTP server) or client-side applications may be deployed for devices of computing devices 16, 18 used by users 20, 24, such as desktop computers, laptop computers, mobile devices, such as smartphones and tablets, or the like.

In some examples, PPEIS 6 may provide a database query engine for directly querying PPEIS 6 to view acquired information, such as compliance information, and any results of the analytic engine, e.g., by the way of dashboards, alert notifications, reports, or the like. That is, users 20, 24, or software executing on computing devices 16, 18, may submit queries to PPEIS 6 and receive data corresponding to the queries for presentation in the form of one or more reports or dashboards. Such dashboards may provide various insights regarding system 2, such as compliance of workers 10, auditing information, images of workers 10, preparedness of workers 10, or the like.

PPEIS 6 may simplify workflows for individuals charged with monitoring and ensure safety compliance for an entity or environment by putting worker 10A in control of his or her own PPE compliance. That is, the techniques of this disclosure may enable worker 10A to take preventative or corrective actions with respect to PPE compliance on his or her own accord rather than relying on another individual directly monitoring and/or verifying the PPE compliance of worker 10A at access point 14B. PPEIS 6 may also enable users 20, 24 to access data and information relating to the PPE compliance and/or preparedness of workers 10.

As one example, the underlying analytical engine of PPEIS 6 may be configured to compute and present customer-defined metrics for worker populations that interact with access point 14B and/or across multiple access points 14 or environments 8 for an organization as a whole. For example, PPEIS 6 may be configured to acquire data and provide aggregated compliance metrics and predicted behavior analytics across a worker population (e.g., across workers 10 of access points 14 and/or environments 8). Furthermore, users 20, 24 may set benchmarks for occurrence of any PPE non-compliance, and PPEIS 6 may track actual compliance metrics relative to the benchmarks for individuals or defined worker populations.

As another example, PPEIS 6 may trigger an alert if one or more PPE non-compliant metrics are detected. In this manner, PPEIS 6 may identify individual workers 10 for which the metrics do not meet the benchmarks and prompt users 20, 24 to intervene and/or perform procedures to improve the metrics relative to the benchmarks, thereby ensuring PPE compliance and actively managing safety of workers 10.

FIG. 2 is a block diagram providing an operating perspective of PPEIS 6 when hosted as a cloud-based platform capable of supporting multiple, distinct access points 14 and/or work environments 8 having an overall population of workers 10 that are required to wear one or more articles of PPE. In the example of FIG. 2, the components of PPEIS 6 are arranged according to multiple logical layers that implement the techniques of the disclosure. Each layer may be implemented by one or more modules and may include hardware, software, or a combination of hardware and software.

In some example approaches, computing devices 32, display 12, input devices 34, and/or safety stations 15 operate as clients 30 that communicate with PPEIS 6 via interface layer 36. Computing devices 32 typically execute client software applications, such as desktop applications, mobile applications, and/or web applications. Computing devices 32 may represent any of computing devices 16, 18 of FIG. 1. Examples of computing devices 32 may include, but are not limited to, a portable or mobile computing device (e.g., smartphone, wearable computing device, tablet), laptop computers, desktop computers, smart television platforms, and/or servers.

In some example approaches, computing devices 32, display 12, cameras 22, input devices 34 and/or safety stations 15 may communicate with PPEIS 6 to send and receive information related to articles of PPE identified for a worker, and for avatar generation, PPE verification, alert generation, or the like. Client applications executing on computing devices 32 may communicate with PPEIS 6 to send and receive information that is retrieved, stored, generated, and/or otherwise processed by services 40. For example, the client applications may request and edit PPE compliance information, avatars, PPE training and/or sizing information, or any other information described herein including analytical data stored at and/or managed by PPEIS 6. In some examples, client applications may request and display information generated by PPEIS 6, such as an avatar of a worker equipped with one or more identified articles of PPE and/or verification of one or more articles of PPE worn by worker 10A in an image. In addition, the client applications may interact with PPEIS 6 to query for analytics information about PPE compliance, behavior trends of workers 10, audit information, or the like. The client applications may output for display information received from PPEIS 6 to visualize such information for users of clients 30. As further illustrated and described below, PPEIS 6 may provide information to the client applications, which the client applications output for display in user interfaces.

Client applications executing on computing devices 32 may be implemented for different platforms but include similar or the same functionality. For instance, a client application may be a desktop application compiled to run on a desktop operating system, such as Microsoft Windows, Apple OS X, or Linux, to name only a few examples. As another example, a client application may be a mobile application compiled to run on a mobile operating system, such as Google Android, Apple iOS, Microsoft Windows Mobile, or BlackBerry OS to name only a few examples. As another example, a client application may be a web application such as a web browser that displays web pages received from PPEIS 6. In the example of a web application, PPEIS 6 may receive requests from the web application (e.g., the web browser), process the requests, and send one or more responses back to the web application. In this way, the collection of web pages, the client-side processing web application, and the server-side processing performed by PPEIS 6 collectively provides the functionality to perform techniques of this disclosure. In this way, client applications use various services of PPEIS 6 in accordance with techniques of this disclosure, and the applications may operate within different computing environments (e.g., a desktop operating system, mobile operating system, web browser, or other processors or processing circuitry, to name only a few examples).

As shown in FIG. 2, in some example approaches, PPEIS 6 includes an interface layer 36 that represents a set of application programming interfaces (API) or protocol interface presented and supported by PPEIS 6. Interface layer 36 initially receives messages from any of clients 30 for further processing at PPEIS 6. Interface layer 36 may therefore provide one or more interfaces that are available to client applications executing on clients 30. In some examples, the interfaces may be application programming interfaces (APIs) that are accessible over network 4. In some example approaches, interface layer 36 may be implemented with one or more web servers. The one or more web servers may receive incoming requests, may process, and/or may forward information from the requests to services 40, and may provide one or more responses, based on information received from services 40, to the client application that initially sent the request. In some examples, the one or more web servers that implement interface layer 36 may include a runtime environment to deploy program logic that provides the one or more interfaces. As further described below, each service may provide a group of one or more interfaces that are accessible via interface layer 36.

In some examples, interface layer 36 may provide Representational State Transfer (RESTful) interfaces that use HTTP methods to interact with services and manipulate resources of PPEIS 6. In such examples, services 40 may generate JavaScript Object Notation (JSON) messages that interface layer 36 sends back to the client application that submitted the initial request. In some examples, interface layer 36 provides web services using Simple Object Access Protocol (SOAP) to process requests from client applications. In still other examples, interface layer 36 may use Remote Procedure Calls (RPC) to process requests from clients 30. Upon receiving a request from a client application to use one or more services 40, interface layer 36 sends the information to application layer 38, which includes services 40.

As shown in FIG. 2, PPEIS 6 also includes an application layer 38 that represents a collection of services for implementing much of the underlying operations of PPEIS 6. Application layer 38 receives information included in requests received from client applications that are forwarded by interface layer 36 and processes the information received according to one or more of services 40 invoked by the requests. Application layer 38 may be implemented as one or more discrete software services executing on one or more application servers, e.g., physical or virtual machines. That is, the application servers provide runtime environments for execution of services 40. In some examples, the functionality of interface layer 36 as described above and the functionality of application layer 38 may be implemented at the same server.

Application layer 38 may include one or more separate software services 40 (e.g., processes) that may communicate via, for example, a logical service bus 44. Service bus 44 generally represents a logical interconnection or set of interfaces that allows different services to send messages to other services, such as by a publish/subscription communication model. For example, each of services 40 may subscribe to specific types of messages based on criteria set for the respective service. When a service publishes a message of a particular type on service bus 44, other services that subscribe to messages of that type will receive the message. In this way, each of services 40 may communicate information to one another. As another example, services 40 may communicate in point-to-point fashion using sockets or other communication mechanism. Before describing the functionality of each of services 40, the layers are briefly described herein.

Data layer 46 of PPEIS 6 represents a data repository 48 that provides persistence for information in PPEIS 6 using one or more data repositories 48. A data repository, generally, may be any data structure or software that stores and/or manages data. Examples of data repositories include but are not limited to relational databases, multi-dimensional databases, maps, and/or hash tables. Data layer 46 may be implemented using Relational Database Management System (RDBMS) software to manage information in data repositories 48. The RDBMS software may manage one or more data repositories 48, which may be accessed using Structured Query Language (SQL). Information in the one or more databases may be stored, retrieved, and modified using the RDBMS software. In some examples, data layer 46 may be implemented using an Object Database Management System (ODBMS), Online Analytical Processing (OLAP) database, or any other suitable data management system.

As shown in FIG. 2, each of services 40A-40I is implemented in a modular form within PPEIS 6. Although shown as separate modules for each service, in some examples the functionality of two or more services may be combined into a single module or component. Each of services 40 may be implemented in software, hardware, or a combination of hardware and software. Moreover, services 40 may be implemented as standalone devices, separate virtual machines or containers, processes, threads, or software instructions generally for execution on one or more physical processors or processing circuitry.

In some examples, one or more of services 40 may each provide one or more interfaces 42 that are exposed through interface layer 36. Accordingly, client applications of computing devices 32 may call one or more interfaces 42 of one or more of services 40 to perform techniques of this disclosure.

In some cases, services 40 include a user identifier service 40A used to identify a worker 10A at access point 14B. For example, user identifier service 40A may receive identification information from a client 30, such as an input device 34, and may read information stored in user data repository 48A to identify worker 10A based on the identification information. In some examples, user data repository 48A may include identification information including at least one of what worker 10A knows (e.g., an identification number password or username), what worker 10A has (e.g., an identity card or token) and what the user is (a physical characteristic of worker 10A such as biometric information, photo recognition information, or voice recognition information of worker 10A). User identifier 40A may receive at least one of such identification information, and may read user data repository 48A to identify worker 10A based on the received identification information.

In some examples, user identifier 40A may process the received identification information to include identification information in the same form as the identification information stored in user data repository 48A. For example, user identifier 40A may analyze an image, a retina, a fingerprint, and/or a voice recording of worker 10A to extract data and/or information from the identification information that is included in user data repository 48A. As one example, user identifier 40A may extract data representative of a pattern of a fingerprint of worker 10A to compare to data stored in user data repository 48A.

PPE processor 40B identifies the one or more articles of PPE 13A for worker 10A to use. For example, as described herein, PPE processor 40B may identify the one or more articles of PPE 13A for worker 10A to use based on an identity of worker 10A, such as based on a job function of worker 10A, environment 8B, based on one or more articles of PPE that worker 10A is trained to use, based on one or more previously worn articles of PPE (e.g., one or more of articles of PPE previously worn by worker 10A, previously worn within environment 8B, or previously worn for a specific job function), or the like. PPE processor 40B may read such information from PPE data repository 48B. For example, PPE data repository 48B may include data relating to PPE required for various job functions, PPE required for various environments 8, articles of PPE that various workers 10 have been trained to use, and/or PPE previously worn for a job function, in an environment 8, or by a worker 10A. PPE data repository 48B may also include information pertaining to various sizes of one or more articles of PPE for workers 10. For example, PPE data repository 48B may include the brand, model, and/or size of one or more articles of PPE for workers 10 based on fit testing of workers 10. In some examples, in addition to, or as an alternative to, PPE data repository 48B, user data repository 48A may include information regarding a job function of worker 10A, environment 8B within which worker 10A is to work, PPE previously worn by worker 10A, fit testing data of worker 10A, or the like.

PPE processor 40B may further create, update, and/or delete information stored in PPE data repository 48B and/or in user data repository 48A. For example, PPE processor 40B may update PPE data repository 48B or user data repository 48A after a worker 10 undergoes training for one or more articles of PPE, or PPE processor 40B may delete information in PPE data repository 48B or in user data repository 48A if a worker 10 has outdated training on one or more articles of PPE. In other examples, PPE processor 40B may create, update, and/or delete information stored in PPE data repository 48B and/or in user data repository 48A due to additional or alternative reasons.

Moreover, in some examples, such as in the example of FIG. 2, a safety manager may initially configure one or more safety rules pertaining to articles of PPE that workers 10 should use. As such, remote user 24 may provide one or more user inputs at computing device 18 that configure a set of safety rules relating to articles of PPE. For example, a computing device 32 of the safety manager may send a message that defines or specifies the one or more articles of PPE required for a specific job function, for a specific environment 8, for a specific worker 10A, or the like. Such messages may include data to select or create conditions and actions of the safety rules. PPEIS 6 may receive the message at interface layer 36 which forwards the message to PPE processor 40B, which may additionally be configured to provide a user interface to specify conditions and actions of rules, receive, organize, store, and update rules included in PPE data repository 48B, such as safety rules relating to PPE that workers 10 should use in various cases.

In some examples, storing the safety rules may include associating a safety rule with context data, such that PPE processor 40B may perform a lookup to select safety rules associated with matching context data. Context data may include any data describing or characterizing the properties or operation of a worker, worker environment, article of PPE, or any other entity. Context data of a worker may include, but is not limited to, a unique identifier of a worker, type of worker, role of worker, physiological or biometric properties of a worker, experience of a worker, training of a worker, time worked by a worker over a particular time interval, location of the worker, or any other data that describes or characterizes a worker. Context data of an article of PPE 13 may include, but is not limited to, a unique identifier of the article of PPE; a type of PPE of the article of PPE; a usage time of the article of PPE over a particular time interval; a lifetime of the PPE; a component included within the article of PPE; a usage history across multiple users of the article of PPE; contaminants, hazards, or other physical conditions detected by the PPE, expiration date of the article of PPE; operating metrics of the article of PPE; size of the PPE; or any other data that describes or characterizes an article of PPE. Context data for a work environment may include, but is not limited to, a location of a work environment, a boundary or perimeter of a work environment, an area of a work environment, hazards within a work environment, physical conditions of a work environment, permits for a work environment, equipment within a work environment, owner of a work environment, responsible supervisor and/or safety manager for a work environment; or any other data that describes or characterizes a work environment. In some examples, the context data may be the same, or close to the same, as the information used to identify the one or more articles of PPE for worker 10A to use.

Avatar generator 40C generates an avatar 52 of worker 10A equipped with the one or more articles of PPE 13 identified for worker 10A to use by PPE processor 40B. Avatar generator 40C may read information from avatar data repository 48C and/or from user data repository 48A to display the avatar 52 of worker 10A. For example, avatar data repository 48C may include previously stored avatars of worker 10A and/or other workers 10, and user data repository 48A may include one or more images of worker 10A. Thus, avatar generator 40C may be able to access a previously stored avatar from avatar data repository 48C and/or one or more images of worker 10A from user data repository 48A, which may enable avatar generator 40C to display the avatar of worker 10A using a previously stored avatar, by modifying a previously stored avatar, and/or by rendering a new avatar of worker 10A (e.g., using the one or more images of worker 10A). Additionally, or alternatively, avatar generator 40C may receive one or more images of worker 10 from camera 22 and may use the one or more captured images to display the avatar 52 of worker 10A. In some cases, avatar generator 40C may display a moving avatar of worker 10A.

Avatar generator 40C also equips the avatar 52 of worker 10A with the one or more articles of PPE 13A identified for worker 10A to use by PPE processor 40B. In some examples, avatar data repository 48C may include one or more stored articles of PPE such that avatar generator 40C does not have to render new articles of PPE to equip the avatar with. In other examples, avatar generator may have to render one or more articles of PPE from scratch to equip the avatar with the proper one or more articles of PPE as identified by PPE processor 40B.

In some examples, information stored in user data repository 48A and/or in avatar data repository 48C may include information relating to at least one of hair color, eye color, height, weight, facial features, skin tone, or attire of workers 10. In this way, avatar generator 40C may be able to read such information and display an avatar that resembles worker 10A in at least one of hair color, eye color, height, weight, facial features, skin tone, or attire. Additionally, or alternatively, image analyzer 40D may be able to analyze one or more images of worker 10A to identify such information. In such examples, image analyzer 40D may store the information in user data repository 48A and/or in avatar data repository 48C. As described above, avatar generator 40C may display a cartoon version of worker 10A rather than including actual images of worker 10A, such as to maintain the privacy of worker 10A.

Avatar generator 40C may include the avatar 52 of worker 10A equipped with the one or more articles of PPE 13 in a user interface, and may send the user interface to display 12 for presentation to worker 10A as shown in FIG. 1. Moreover, avatar generator 40C may further create, update, and/or delete information stored in user data repository 48A and/or in avatar data repository 48C. For example, avatar generator 40C may update user data repository 48A and/or avatar data repository 48C to include a captured image, a rendered avatar, and/or one or more rendered articles of PPE. In other examples, avatar generator 40C may create, update, and/or delete information stored in user data repository 48A and/or in avatar data repository 48C to include additional and/or alternative information.

Image analyzer 40D analyzes images of workers 10. For example, image analyzer 40D may analyze one or more images of worker 10A such that avatar generator 40C can display an avatar of worker 10A based on the one or more images. As another example, image analyzer 40D may receive one or more images of worker 10A from camera 22 to identify one or more articles of PPE worn by worker 10A in the one or more images. In some examples, image analyzer 40D may access data relating to features of workers 10 and/or articles of PPE from user data repository 48A and/or from PPE data repository 48B. In such examples, image analyzer 40D may analyze received images to look for such features of workers 10 and/or articles of PPE in the received images. Image analyzer 40D may compare features found in the one or more analyzed images to the features indicated in user data repository 48A and/or in PPE data repository 48B to identify a worker 10, identify an article of PPE worn by a worker 10 in the image, or the like.

Image analyzer 40D may also be able to identify details about a worker 10 and/or an article of PPE worn by the worker 10 in the image from the one or more images. For example, image analyzer 40D may be able to identify a brand, a model, a size, or the like of an article of PPE worn by the worker 10 in the one or more analyzed images and/or identify at least one of hair color, eye color, height, weight, facial features, skin tone, or attire of a worker 10 in the one or more images. The identified details may be saved in at least one of user data repository 48A or PPE data repository 48B, may be sent to avatar generator 40C for display of an avatar including the identified details, may be sent to PPE verifier 40E for verification of the one or more articles of PPE worn by worker 10A in the one or more images, or combinations thereof. Image analyzer 40D may further create, update, and/or delete information stored in user data repository 48A and/or in PPE data repository 48B.

The one or more articles of PPE identified as being worn by worker 10A in an image may be used by PPE verifier 40E to verify that worker 10A is equipped with the proper PPE (e.g., the same one or more articles of PPE identified for worker 10A to use by PPE processor 40B). In some examples, PPE verifier 40E may compare the one or more articles of PPE worn by worker 10A in the image (e.g., as identified by image analyzer 40D) and the one or more articles of PPE for worker 10A to use (e.g., as identified by PPE processor 40B). Based on the comparison, PPE verifier 40E may determine whether worker 10A is wearing all required articles of PPE, whether the articles of PPE worn by worker 10A in the image are the proper size for worker 10A, whether worker 10A is trained to use the articles of PPE worn by worker 10A in the image, or the like.

In some examples, PPE verifier 40E may modify the avatar of worker 10A displayed by avatar generator 40C to highlight or otherwise indicate one or more errors with respect to the one or more articles of PPE worn by worker 10A in the image. In some cases, PPE verifier 40E may highlight or otherwise indicate one or more articles of PPE that are not present in the one or more articles of PPE worn by worker 10A in the image, that are the incorrect size for worker 10A, that worker 10A is not trained to use, or combinations thereof. In some such examples, PPE verifier 40E may be configured to generate a user interface including the modified avatar of the worker. PPE verifier 40E may highlight or otherwise indicate different errors in different ways such that worker 10A can differentiate between errors when two or more types of errors are present. For example, PPE verifier 40E may highlight a missing article of PPE in a first color or pattern, may highlight an article of PPE that is incorrect in size using a second color or pattern, may highlight an article of PPE that worker 10A has not been trained to use using a third color or pattern. In other examples, indications other than colored and/or patterned highlighted articles of PPE may be used to indicate the one or more errors of the articles of PPE worn by worker 10A in the image. Determination of an error with respect to the one or more articles of PPE worn by worker 10A in the image may result in notification service 40F generating an alert indicating the error in addition to, or as an alternative to, PPE verifier 40D modifying the displayed avatar of worker 10A to indicate the error.

Additionally, or alternatively, PPE verifier 40E may receive confirmation of one or more articles of PPE from input devices 34. In some cases, worker 10A may be able to confirm that he or she is wearing the one or more articles of PPE identified by PPE processor 40B and equipped by the avatar displayed by avatar generator 40C. Thus, in some examples, PPE verifier 40E may receive the confirmation, and may provide an indication of the received confirmation. For example, PPE verifier 40E may highlight the one or more confirmed articles of PPE in a user interface including the avatar with the highlighted articles for display using display 12. In other examples, PPE verifier 40E may present an indication of the received confirmation in a different way. As one example, PPE verifier 40E may use notification service 40F to present an alert indicating confirmation of the one or more articles of PPE. As another example, a user interface indicating the received confirmation may include a list of the one or more articles of PPE that the avatar is equipped with (e.g., the one or more articles of PPE identified for worker 10A to use by PPE processor 40B), and PPE verifier 40E may check one or more articles of PPE off on the list based on the received confirmations. Moreover, in some examples, PPE verifier 40E may indicate a lack of confirmation of one or more articles of PPE. For example, PPE verifier 40E may highlight or otherwise indicate any non-confirmed articles of PPE out of the one or more articles of PPE identified for worker 10A to use by PPE processor 40B.

In some examples, PPE verifier 40E may read, create, update, and/or delete information stored in verified PPE repository 48E. For example, verified PPE repository 48E may include the PPE identified as worn by worker 10A in an image by image analyzer 40D, one or more avatars modified to indicate missing and/or incorrect articles of PPE worn by worker 10A in the image, one or more captured images of worker 10A used to verify the one or more articles of PPE worn by worker 10A in the image, or the like. In other examples, the data that would be stored in verified PPE repository 48E may be stored in one or more other data stores. For example, identified PPE data may be stored in PPE data repository 48B and/or in user data repository 48A.

In some examples, analytics service 40G performs in depth processing of the one or more identified articles of PPE for workers 10, one or more images, one or more articles of PPE identified as worn by a worker in an image, or the like. Such in depth processing may enable analytics service 40G to determine PPE compliance of workers 10, such as PPE compliance for workers entering environment 8 via a specific access point 14, PPE compliance of individual workers 10, more accurately identify the one or more articles of PPE worn by worker 10A in images, or the like.

In some cases, analytics service 40G performs in depth processing in real-time to provide real-time alerting and/or reporting. In this way, analytics service 40G may be configured as an active safety management system that provides real-time alerting and reporting to a safety manager, a supervisor, or the like in the case of PPE non-compliance of a worker 10. This may enable the safety manager and/or supervisor to intervene in the PPE non-compliance of the worker 10 such that worker 10 is not at risk for harm, injury, health complications, or combinations thereof due to a lack of PPE compliance.

In addition, analytics service 40G may include a decision support system that provides techniques for processing data to generate assertions in the form of statistics, conclusions, and/or recommendations. For example, analytics service 40G may apply historical data and/or models stored in models repository 48D to determine the accuracy of the one or more articles of PPE worn by worker 10A in the image determined by image analyzer 40D. In some such examples, analytics service 40G may calculate a confidence level relating to the identification accuracy of one or more articles of PPE worn by worker 10A in the image. As one example, in the case in which lighting conditions of access point 14B may be reduced, the confidence level calculated by analytics service 40G may be lower than a confidence level calculated when lighting conditions are not reduced. If the calculated confidence level is less than or equal to a threshold confidence level, notification service 40F may present an alert on display 12 to notify worker 10A that the results of the PPE verification may not be completely accurate. Hence, analytics service 40G may maintain or otherwise use one or more models that provide statistical assessments of the accuracy of the identification of the one or more articles of PPE required and/or worn by a worker in an image. In one example approach, such models are stored in models repository 48D.

Analytics service 40G may also generate order sets, recommendations, and quality measures. In some examples, analytics service 40G may generate user interfaces based on processing information stored by PPEIS 6 to provide actionable information to any of clients 30. For example, analytics service 40G may generate dashboards, alert notifications, reports and the like for output at any of clients 30. Such information may provide various insights regarding baseline (“normal”) PPE compliance across worker populations, identifications of any anomalous workers engaging in PPE non-compliance that may potentially expose the worker to risks, identifications of any of access points 14B exhibiting anomalous occurrences of PPE non-compliance relative to other environments, or the like.

Moreover, in addition to non-compliance, analytics service 40G may use in depth process to more accurately identify and/or verify the one or more articles of PPE. For example, although other technologies can be used, analytics service 40G may utilize machine learning when processing data in depth. That is, analytics service 40G may include executable code generated by application of machine learning to PPE identification, image analyzing, PPE verification, PPE compliance, or the like. The executable code may take the form of software instructions or rule sets and is generally referred to as a model that can subsequently be applied to data generated by or received by PPEIS 6 for detecting similar patterns, identifying the one or more articles of PPE, analyzing images, verifying the one or more articles of PPE, or the like.

Analytics service 40G may, in some examples, generate separate models for each worker 10A, for a particular population of workers 10, for a particular access point 14, for a combination of one or more articles of PPE, for a type of PPE, for a brand, model, and/or size of PPE, for a specific job function, or for combinations thereof, and store the models in models repository 48D. Analytics service 40G may update the models based on PPE compliance data, images, and/or PPE verification. For example, analytics service 40G may update the models for each worker 10A, for a particular population of workers 10, for a particular access point 14, for a combination of one or more articles of PPE, for a type of PPE, for a brand, model, and/or size of PPE, for a specific job function, or for combinations thereof based on data received from camera 22, input devices 34, and/or any other component of PPEIS 6, and may store the updated models in models repository 48D. Analytics service 40G may also update the models based on statistical analysis performed, such as the calculation of confidence intervals, and may store the updated models in models repository 48D.

Example machine learning techniques that may be employed to generate models can include various learning styles, such as supervised learning, unsupervised learning, and semi-supervised learning. Example types of algorithms include Bayesian algorithms, Clustering algorithms, decision-tree algorithms, regularization algorithms, regression algorithms, instance-based algorithms, artificial neural network algorithms, deep learning algorithms, dimensionality reduction algorithms, or the like. Various examples of specific algorithms include Bayesian Linear Regression, Boosted Decision Tree Regression, and Neural Network Regression, Back Propagation Neural Networks, the Apriori algorithm, K-Means Clustering, k-Nearest Neighbour (kNN), Learning Vector Quantization (LUQ), Self-Organizing Map (SOM), Locally Weighted Learning (LWL), Ridge Regression, Least Absolute Shrinkage and Selection Operator (LASSO), Elastic Net, Least-Angle Regression (LARS), Principal Component Analysis (PCA), and/or Principal Component Regression (PCR).

In some examples, analytics service 40G may provide comparative ratings of PPE compliance of workers 10. For example, analytics service 40G may “gamify” the PPE compliance of workers 10. In other words, in some cases, analytics service 40G may reward points to workers 10 for PPE compliance, which may increase worker morale and/or increase the desire of workers 10 to comply with PPE policies and regulations.

Record management and reporting service 40H processes and responds to messages and queries received from computing devices 32 via interface layer 36. For example, record management and reporting service 40H may receive requests from client computing devices for event data related to individual workers, populations or sample sets of workers, and/or access points 14. In response, record management and reporting service 40H accesses information based on the request. Upon retrieving the data, record management and reporting service 40H constructs an output response to the client application that initially requested the information. In some examples, the data may be included in a document, such as an HTML document, or the data may be encoded in a JSON format or presented by a dashboard application executing on the requesting client computing device. For instance, as further described in this disclosure, example user interfaces that include information relating to worker PPE identification, confirmation, and verification are depicted in FIGS. 3A-5D.

As additional examples, record management and reporting service 40H may receive requests to find, analyze, and correlate PPE compliance information. For instance, record management and reporting service 40H may receive a query request from a client application for verified PPE stored in repository 48E over a historical time frame, such that a user can view PPE compliance information over a time and/or a computing device can analyze the PPE compliance information over time.

In some examples, services 40 may also include security service 40I that authenticates and authorizes users and requests with PPEIS 6. Specifically, security service 40I may receive authentication requests from client applications and/or other services 40 to access data in data layer 46 and/or perform processing in application layer 38. An authentication request may include credentials, such as a username and password. Security service 40I may query user data repository 48A to determine whether the username and password combination is valid. User data repository 48A may include security data in the form of authorization credentials, policies, and any other information for controlling access to PPEIS 6. As described above, user data repository 48A may include authorization credentials, such as combinations of valid usernames and passwords for authorized users of PPEIS 6. Other credentials may include device identifiers or device profiles that are allowed to access PPEIS 6.

Security service 40I may provide audit and logging functionality for operations performed at PPEIS 6. For instance, security service 40I may log operations performed by services 40 and/or data accessed by services 40 in data layer 46. Security service 40I may store audit information such as logged operations, accessed data, and rule processing results in audit data repository 48F. In some examples, security service 40I may generate events in response to one or more rules being satisfied. Security service 40I may store data indicating the events in audit data repository 48F.

Although generally described herein as avatars, images, rendered articles of PPE, or any other stored information described herein being stored in data repositories 48, in some examples, data repositories 48 may additionally or alternatively include data representing such avatars, images, rendered articles of PPE, or any other stored information described herein. As one example, encoded lists, vectors, or the like representing a previously stored avatar may be stored in addition to, or as an alternative, the previously stored avatar itself. In some examples, such data representing avatars, images, rendered articles of PPE, or any other stored information described herein may be simpler to store, evaluate, organize, categorize, or the like in comparison to storage of the actual avatars, images, rendered articles of PPE, or the like.

In general, while certain techniques or functions are described herein as being performed by certain components or modules, it should be understood that the techniques of this disclosure are not limited in this way. That is, certain techniques described herein may be performed by one or more of the components or modules of the described systems. Determinations regarding which components are responsible for performing techniques may be based, for example, on processing costs, financial costs, power consumption, or the like.

FIG. 3A illustrates an example user interface (UI) 50 that includes an avatar 52 of a worker equipped with one or more articles of PPE 54A-54H (collectively, “PPE 54”) identified for the worker to use. In the example of FIG. 3A, avatar 52 is equipped with PPE 54 including a hard hat 54A, safety glasses 54B, ear protection 54H, a full body harness 54C, safety gloves 54D, a back belt 54F, a safety lanyard with hooks 54E, and steel toed shoes 54G. Such PPE 54 may be required for a job function of the worker and/or for an environment for which the worker will be within. Additionally, or alternatively, PPE 54 on avatar 52 may include PPE 54 the worker has been trained to use, is properly sized for the worker, has been previously worn (e.g., by the worker or by another worker in for the same job function and/or environment), or combinations thereof as described herein.

In some cases, in addition to avatar 52 being equipped with PPE 54 identified for the worker to use, UI 50 may include a list of PPE 64 corresponding to the one or more articles of PPE 54 equipped by avatar 52. In the example of FIG. 3A, the list of PPE 64 includes a hard hat, safety glasses, ear protection, a full body harness, safety gloves, a back belt, a safety lanyard with hooks, and steel toed shoes, all of which correspond to PPE 54 on avatar 52.

In some examples, UI 50 may include additional information relating to the worker, the job function of the worker, the environment which the worker will be within, or the like. For example, UI 50 may indicate the identity of the worker 56 (e.g., the identity of the worker avatar 52 was generated for), the job function of the worker 58, and/or the work environment 60 in which the worker will be working within. This additional information may enable the worker to verify that PPE 54 on avatar 52 is correct. As one example, if one of worker identity 56, job function 58, and/or work environment 60 is incorrect or not what the worker was expecting, the worker may be able to contact a supervisor, safety manager, scheduler, or the like to verify and/or correct the information displayed on UI 50. In this way, UI 50 may help the worker ensure that he or she is equipped with the proper PPE 54 as well as make sure the worker performs the proper job function and/or enters the correct work environment.

Additionally, or alternatively, UI 50 may include information relating to work environment 60. For example, UI 50 may indicate one or more conditions of the work environment 62, such as temperature, humidity, presence of gas, pressure, visibility, wind, or the like of the work environment 60. In turn, the worker may be more prepared to enter the work environment and/or preform the job function within the work environment.

FIG. 3B illustrates another example UI 70 that includes avatars 72A, 72B of a worker equipped with one or more articles of PPE 74A-74H (collectively, “PPE 74”) identified for the worker to use. In the example of FIG. 3B, multiple views of the avatar 72A, 72B (collectively, “avatar 72”) of the worker equipped with PPE 74. For example, UI 70 includes a front-side view avatar 72A and a back-side view avatar 72B. In some examples, multiple views of avatar 72 may better show one or more articles of PPE 74, provide more details of one or more articles of PPE 74, or both. For instance, in the example of FIG. 3B a self-contained breathing apparatus (SCBA) 74H is shown in more detail in the back-side view avatar 72B than the front-side view avatar 72A.

In addition to, or as an alternative to UI 70 including multiple, separate views of avatar 72, UI 70 may enable a user to move, turn, or otherwise adjust the view of avatar 72. For example, UI 70 may include a single avatar 72 in which a user can spin (e.g., using a touch screen or another input device) to see multiple views of the avatar.

FIG. 4A illustrates an example UI 80 including one or more indications of a received confirmation 84A-84E (collectively, “confirmations 84”) of the one or more articles of PPE 54 of avatar 52 of FIG. 3A. As described herein, PPEIS 6 may enable a user to confirm that he or she is wearing the one or more articles of PPE 54 equipped by avatar 52, and PPEIS 6 may present an indication of the received confirmation, as seen in FIG. 4A.

In the example of FIG. 4A, avatar 52 includes confirmed articles of PPE 84A-84D (collectively, “confirmed PPE 84”) and non-confirmed articles of PPE 86A-86D (collectively, “non-confirmed PPE 86”). UI 80 may indicate confirmed PPE 84 and non-confirmed PPE 86 such that a user can differentiate between the confirmed PPE 84 and the non-confirmed PPE 86. For example, UI 80 may use different colors, patterns, outlines, shapes, shading, highlighting, or the like to indicate confirmed PPE 84 and non-confirmed PPE 86. Although FIG. 4A shows that both confirmed PPE 84 and non-confirmed PPE 86 are indicated, in other examples, one of confirmed PPE 84 and non-confirmed PPE 86 may be indicated and the other of confirmed PPE 84 and non-confirmed PPE 86 may not be indicated.

In some examples, UI 80 may include more than one indication of the confirmed PPE 84 and the non-confirmed PPE 86. For example, as shown in FIG. 4A, list of PPE 64 corresponding to the one or more articles of PPE 54 equipped by avatar 52 may include check boxes 88 for each article of PPE 54 equipped by avatar 52. In this way, UI 80 may include a check 90 or another marking to mark off each article of PPE corresponding to confirmed PPE 84 and may leave check boxes 88 blank corresponding to the non-confirmed articles of PPE 86.

UI 80 may also enable a user to obtain additional information about PPE 54. For example, a user may want to know more information about one or more articles of non-confirmed PPE 86, such that the user can properly equip themselves with the required PPE prior to beginning a job function and/or entering a work environment.

FIG. 4B illustrates example UI 80 including an information window 92 for an article of PPE 54 of avatar 52 of FIG. 3A. As illustrated in FIG. 4B, information window 92 is presenting additional information with respect to safety glasses 86A. Although safety glasses 86A is a non-confirmed article of PPE 86, UI 80 may also enable a user to obtain additional information for any article of PPE 54, both confirmed PPE 84 and non-confirmed PPE 86.

In some examples, information window 92 may include information of an article of PPE 54 including, but not limited to, a type 92A of an article of PPE 54, a brand 92B of the article of PPE 54, a model 92C of the article of PPE 54, a size 92D of the article of PPE 54, a location 92E to obtain the article of PPE 54 (e.g., a safety station 15 of FIG. 1), and an image and/or an avatar 92F of the article of PPE 54. In other examples, information window 93 may include additional or alternative information relating to one or more articles of PPE 54.

FIGS. 5A-5D illustrate example UIs 100, 120, 130, 140 indicating verification of the one or more articles of PPE 54 of avatar 52 of FIG. 3A. FIG. 5A illustrates an example UI 100 indicating verification of the one or more articles of PPE 54 of avatar 52 of FIG. 3A in which one or more articles of PPE 54 are present 104 in one or more articles of PPE worn by the worker in an image and one or more articles of PPE 54 are not present 106 (e.g., missing) in the one or more articles of PPE worn by the worker in the image. The one or more articles of PPE worn by the worker in the image may be identified based on an analyzed image of the worker. Verification of the one or more articles of PPE worn by the worker in the image may be similar to indication of a received confirmation of one or more articles of PPE 54 (e.g., as in FIGS. 4A and 4B). For example, UI 100 may use different colors, patterns, outlines, shapes, shading, highlighting, or the like to indicate PPE present 104 in the one or more articles of PPE worn by the worker in the image and not present 106 in the one or more articles of PPE worn by the worker in the image.

In some examples, UI 100 may include more than one indication of the verified PPE of the one or more articles of PPE worn by the worker 10A in the image. For example, as shown in FIG. 5A, list of PPE 64 corresponding to the one or more articles of PPE 54 equipped by avatar 52 includes check boxes 88 for each article of PPE 54 equipped by avatar 52, and a check 90 indicating each article of PPE 54 present 104 in the one or more articles of PPE worn by the worker in the image.

Moreover, UI 100 may include an alert 108 indicating that one or more articles of PPE 54 identified for the worker to use are not present 106. Alert 108 may include any suitable information. As one example, alert 108 may list the one or more articles of PPE 54 not present 106 in the one or more articles of PPE worn by the worker in the image.

In some examples, UI 100 may present a confidence level 110 relating to the identification accuracy of the one or more articles of PPE worn by the worker in the image. In some such cases, UI 100 may always include confidence level 110. In other cases, UI 100 may only include confidence level 110 if the confidence level is determined to be less than or equal to a threshold confidence level. Confidence level 110 may be presented in any suitable manner. For example, confidence level 110 may be presented as a numerical value, a value based on a scale of values, a color, relative terms, or the like.

FIG. 5B illustrates an example UI 120 indicating verification of the one or more articles of PPE 54 of avatar 52 of FIG. 3A in which one or more articles of PPE worn by the worker in the image are the proper size 124 for the worker and one or more articles of PPE worn by the worker in the image are not the proper size 126 for the worker. As described above, UI 120 may use different colors, patterns, outlines, shapes, shading, highlighting, or the like to indicate PPE that is the proper size 124 in the one or more articles of PPE worn by the worker in the image and the incorrect size 126 in the one or more articles of PPE worn by the worker in the image. In some examples, UI 120 may additionally or alternatively include an alert 128 indicating that one or more articles of PPE worn by the worker in the image are the correct size 124 and/or are the incorrect size 126.

As seen in FIG. 5B, each article of PPE 54 in the list of PPE 64 corresponding to the one or more articles of PPE 54 equipped by avatar 52 is checked off 90 in a respective check box 88. Thus, UI 120 may indicate both whether the one or more articles of PPE worn by the worker in the image are present and/or have been confirmed, and whether each article of the one or more articles of PPE worn by the worker in the image is the correct 124 or incorrect size 126 for the worker. In the example of FIG. 5B, the list of PPE 64 indicates that all articles of PPE 54 have been confirmed and/or are present, and that safety glasses 54B, safety gloves 54D, lanyard with safety hooks 54E, and steel toed shoes 54G are the incorrect size 126 for the worker.

FIG. 5C illustrates an example UI 130 indicating verification of the one or more articles of PPE 54 of avatar 52 of FIG. 3A in which the worker has been trained to use 134 one or more articles of PPE worn the worker in the image and has not been trained to use 136 one or more articles of PPE worn by the worker in the image. UI 130 may use different colors, patterns, outlines, shapes, shading, highlighting, or the like to indicate PPE the worker has been trained to use 134 and PPE the worker has not been trained to use 136. In some examples, UI 120 may additionally or alternatively include an alert 138 indicating the workers training status on the one or more articles of PPE worn by the worker in the image. Similar to FIG. 5B, each article of PPE 54 in the list of PPE 64 corresponding to the one or more articles of PPE 54 equipped by avatar 52 is checked off 90 in a respective check box 88 indicating that all articles of PPE 54 have been confirmed and/or are present, and UI 120 also indicates that the worker is has not been trained to use safety glasses 54B, safety gloves 54D, lanyard with safety hooks 54E, and steel toed shoes 54G.

FIG. 5D illustrates another example UI 140 indicating verification of the one or more articles of PPE 54 of avatar 52 of FIG. 3A in which the worker has been trained to use 134 one or more articles of PPE worn by the worker in the image and has not been trained to use 136 one or more articles of PPE worn by the worker in the image. UI 140 of FIG. 5D is substantially the same as UI 130 of FIG. 5C. In the example of FIG. 5D, however, confidence level 110 includes a low confidence level alert 142 indicating that the one or more articles of PPE worn by the worker in the image as identified by PPEIS 6 may not be accurate. In some examples, such a low confidence level alert 142 may prompt the user to verify the results obtained during the PPE verification by PPEIS 6. In some cases, a user may be able to indicate any errors made by PPEIS 6 using UI 140. In this way, PPEIS 6 may be able to adjust and/or improve analyzing techniques used to identify the one or more articles of PPE worn by worker 10A in the image (e.g., using a machine-learning technique).

Although indication of received confirmations, verification of wearing all PPE 54 (e.g., PPE being present or not present), verification of sizes, verification of training status, and low confidence level alerts were described separately with respect to FIGS. 4A-5D, the UIs of PPEIS 6 may include any combination of the received confirmations, verification of PPE, and low confidence level alerts in any one or more UIs. Moreover, the UIs of PPEIS 6 may include any additional and/or alternative information, or may not include all of the information illustrated in the UIs of FIGS. 3A-5D.

FIG. 6 is a flow diagram illustrating an example technique for displaying an avatar of a worker equipped with one or more articles of PPE identified for a worker to use, according to aspects of this disclosure. The technique of FIG. 6 will be described with respect to computing system 2 of FIG. 1 and PPEIS 6 of FIG. 2. In other examples, however, the technique of FIG. 6 may be used with additional or alternative systems other than computing system 2 and/or PPEIS 6.

In some examples, user identifier 40A optionally identifies worker 10A. For example, user identifier 40A may receive identification information from a client 30, such as input devices 34, and may read information stored in user data repository 48A to identify worker 10A based on the identification information. In some such examples, user identifier 40A may receive identification information including at least one of an identification number, a username, biometric information, photo recognition information, or voice recognition information of worker 10A, and may read data from user data repository 48A to identify worker 10A based on the received identification information.

In the technique of FIG. 6, PPE processor 40B identifies one or more articles of PPE 13A for worker 10A to use (150). In some examples, PPE processor 40B may identify the one or more articles of PPE 13A for worker 10A to use based on the identity of worker 10A. For example, PPE processor 40B may identify the one or more articles of PPE 13A for worker 10A to use based on at least one of a job function of worker 10A, environment 8B, based on one or more articles of PPE that worker 10A is trained to use, based on one or more previously worn articles of PPE (e.g., one or more of articles of PPE previously worn by worker 10A, previously worn within environment 8B, or previously worn for a specific job function), or the like.

Avatar generator 40C displays an avatar of worker 10A (152). Displaying the avatar of worker 10A may include equipping the avatar of worker 10A with the one or more articles of PPE for worker 10A to use as identified by PPE processor 40B. Avatar generator 40C may display the avatar of worker 10A using a previously stored avatar, by modifying a previously stored avatar, and/or by rendering a new avatar of worker 10A (e.g., using the one or more images of worker 10A).

In some examples, the technique of FIG. 6 includes avatar generator 40C displaying a moving avatar of worker 10A. For example, image analyzer 40D may compare a first image to a second image, in which the first image was captured at an earlier time than the second image, and determine a movement of worker 10A based on the comparison of the first and second images. If a movement of worker 10A is determined, avatar generator 40C may display a moving avatar of worker 10A equipped with the one or more articles of PPE 13A, where the moving avatar is configured to mirror the determined movement of worker 10A.

In some cases, the technique of FIG. 6 includes PPE verifier 40E indicating a received confirmation of the one or more articles of PPE identified for worker 10A to use from worker 10A, such as via input devices 34. Additionally, or alternatively PPE verifier 40E may verify the one or more articles of PPE identified for worker 10A to use based on a size, a training status, or the like of identified articles of PPE worn by worker 10A in an image.

FIG. 7 is a flow diagram illustrating an example technique for verifying one or more articles of PPE worn by a worker in an image with one or more articles of PPE identified for a worker to use, according to aspects of this disclosure. The technique of FIG. 7 will be described with respect to computing system 2 of FIG. 1 and PPEIS 6 of FIG. 2. In other examples, however, the technique of FIG. 7 may be used with additional or alternative systems other than computing system 2 and/or PPEIS 6.

The technique of FIG. 7 includes capturing an image of worker 10A (160). In some examples, camera 22 or another image capture device may capture the image of worker 10A. Then, the technique further includes identifying, by image analyzer 40D, one or more articles of PPE worn by worker 10A in the image (162). In addition, the technique includes PPE verifier 40E comparing one or more articles of PPE identified for worker 10A to use (e.g., as in the technique of FIG. 6) and the one or more articles of PPE worn by worker 10A in the image (164). PPE verifier 40E subsequently determines whether the one or more articles of PPE identified for worker 10A to use and the one or more articles of PPE worn by worker 10A in the image are the same (166).

Based on the comparison and/or determination of whether the one or more articles of PPE identified for worker 10A to use and the one or more articles of PPE worn by worker 10A in the image are the same, PPE verifier 40E may determine a variety of information relating to PPE compliance of worker 10A. For example, PPE verifier 40E may determine whether each of the articles of PPE worn by worker 10A in the image are approximately the same size as corresponding articles of PPE of the one or more articles of PPE identified for worker 10A to use. As another example, PPE verifier 40E may determine whether worker 10A is trained to use any of the articles of PPE that are not the same as corresponding articles of PPE identified worker 10A to use. As yet another example, PPE verifier 40E may determine whether any of the articles of PPE identified for worker 10A to use are missing from the articles of PPE worn by worker 10A in the image.

If the one or more articles of PPE identified for worker 10A to use and the one or more articles of PPE worn by worker 10A in the image are not the same (NO branch of 166), PPE verifier 40E may present an alert indicating PPE non-compliance of worker 10A (170). For example, if one or more of the articles of PPE worn by worker 10A in the image are not approximately the same size as corresponding articles of PPE of the one or more articles of PPE identified for worker 10A to use, PPE verifier 40E may present an alert indicating that the article of PPE of worn by worker 10A in the image is different in size from the corresponding article of PPE identified for worker 10A to use. As another example, if worker 10A is not trained to use any of the articles of PPE worn by worker 10A in the image that are not the same as corresponding articles of PPE identified for worker 10A to use, PPE verifier 40E may present an alert indicating that worker 10A is not trained to use the article of PPE worn by worker 10A in the image. As still another example, if any of the articles of PPE identified for worker 10A to use are missing from the articles of PPE worn by worker 10A in the image, PPE verifier 40E may present an alert identifying the missing articles of PPE.

As an additional example, PPE verifier 40E may compare one or more previously worn articles of PPE to the articles of PPE worn by worker 10A in the image. PPE verifier 40E may be further configured to determine whether at least one of one or more articles of PPE worn by worker 10A in the image is different from a corresponding previously worn article of PPE, or whether a previously worn article of PPE is not present in the one or more articles of PPE worn by worker 10A in the image. In some examples, if one or more articles of PPE worn by worker 10A in the image are different from a corresponding previously worn article of PPE, PPE verifier 40E may present an alert identifying how the articles of PPE are different. Similarly, if a previously worn article of PPE is not present in the one or more articles of PPE worn by worker 10A in the image, PPE verifier 40E may present an alert identifying the previously worn article of PPE that is not present in the one or more articles of PPE worn by worker 10A in the image.

In some examples, the verification technique of FIG. 7 may include capturing a second image of worker 10A (160) after presentation of an alert indicating the PPE non-compliance of worker 10A (170) such that worker 10A can resolve any errors in PPE compliance and have his or her PPE compliance reverified.

If the one or more articles of PPE identified for worker 10A to use and the one or more articles of PPE worn by worker 10A in the image are the same (YES branch of 166), PPE verifier 40E may present an alert indicating PPE compliance of worker 10A and record PPE compliance of worker 10A (168). In some examples, PPEIS 6 may record the PPE compliance of worker 10A in one or more of data repositories 48.

FIG. 8 is a flow diagram illustrating another example technique for verifying one or more articles of PPE worn by a worker in an image with one or more articles of PPE identified for a worker to use, according to aspects of this disclosure. The technique of FIG. 8 will be described with respect to computing system 2 of FIG. 1 and PPEIS 6 of FIG. 2. In other examples, however, the technique of FIG. 8 may be used with additional or alternative systems other than computing system 2 and/or PPEIS 6.

The technique of FIG. 8 includes PPEIS 6 detecting the presence of a worker 10A (180). For example, in some cases, camera 22 may be configured to detect the presence of worker 10A. The technique of FIG. 8 includes capturing an image of worker 10A (182). In some examples, camera 22 or another image capture device may capture the image of worker 10A. Then, PPEIS 6 may identify worker 10A (184). For example, user identifier 40A may identify worker 10A by receiving identification information from a client 30, such as input devices 34, and may read information stored in user data repository 48A to identify worker 10A based on the identification information. In some such examples, user identifier 40A may receive identification information including at least one of an identification number, a username, biometric information, photo recognition information, or voice recognition information of worker 10A, and may read data from user data repository 48A to identify worker 10A based on the received identification information. As one example approach, user identifier 40A may identify worker 10A based on the captured image.

In the technique of FIG. 8, PPE processor 40B identifies one or more articles of PPE 13A for worker 10A to use (186). In some examples, PPE processor 40B may identify the one or more articles of PPE 13A for worker 10A to use based on the identity of worker 10A. For example, PPE processor 40B may identify the one or more articles of PPE 13A for worker 10A to use based on at least one of a job function of worker 10A, environment 8B, based on one or more articles of PPE that worker 10A is trained to use, based on one or more previously worn articles of PPE (e.g., one or more of articles of PPE previously worn by worker 10A, previously worn within environment 8B, or previously worn for a specific job function), or the like.

Avatar generator 40C may then generate avatar 52 of worker 10A (188) and equip avatar 52 of worker 10A with the one or more articles of PPE for worker 10A to use as identified by PPE processor 40B (190). Avatar generator 40C displays avatar 52 of worker 10A equipped with the one or more articles of PPE. In some examples, PPEIS 6 may prompt worker 10A to compare the one or more articles of PPE on avatar 52 with the articles of PPE he or she is wearing (192). In some such examples, PPEIS 6 may optionally alert worker 10A to input confirmation of the one or more articles of PPE worn by avatar 52 (e.g., to indicate that he or she is wearing the required PPE).

Image analyzer 40D may identify one or more articles of PPE worn by worker 10A in the previously captured image (194). In addition, the technique includes PPE verifier 40E comparing one or more articles of PPE identified for worker 10A to use and the one or more articles of PPE worn by worker 10A in the image. PPE verifier 40E subsequently determines whether the one or more articles of PPE identified for worker 10A to use and the one or more articles of PPE worn by worker 10A in the image are the same (196).

Based on the comparison and/or determination of whether the one or more articles of PPE identified for worker 10A to use and the one or more articles of PPE worn by worker 10A in the image are the same, PPE verifier 40E may determine a variety of information relating to PPE compliance of worker 10A. For example, if the one or more articles of PPE identified for worker 10A to use and the one or more articles of PPE worn by worker 10A in the image are not the same (NO branch of 196), PPE verifier 40E may present an alert indicating PPE non-compliance of worker 10A (200). In some examples, the verification technique of FIG. 8 may include capturing a second image of worker 10A (182) after presentation of an alert indicating the PPE non-compliance of worker 10A (200) such that worker 10A can resolve any errors in PPE compliance and have his or her PPE compliance reverified.

If the one or more articles of PPE identified for worker 10A to use and the one or more articles of PPE worn by worker 10A in the image are the same (YES branch of 196), PPE verifier 40E may present an alert indicating PPE compliance of worker 10A. In some examples, PPEIS 6 may record the PPE compliance of worker 10A (198) in one or more of data repositories 48.

FIG. 9 is a flow diagram illustrating an example technique for verifying one or more articles of PPE worn by a worker in an image with one or more articles of PPE identified for a worker to use for a confined space environment, according to aspects of this disclosure. The technique of FIG. 9 will be described with respect to computing system 2 of FIG. 1 and PPEIS 6 of FIG. 2. In other examples, however, the technique of FIG. 9 may be used with additional or alternative systems other than computing system 2 and/or PPEIS 6. In some examples, entry into a confined space environment may be more strictly regulated than entry into a non-confined space environment. Thus, in some examples, an attendant may be required to verify PPE compliance of worker 10A in addition to verification by PPEIS 6.

User identifier 40A may optionally receive identification information from a client 30, such as input devices 34 (210). In some such examples, user identifier 40A may receive identification information including at least one of an identification number, a username, biometric information, photo recognition information, or voice recognition information of worker 10A. PPEIS 6 may optionally identify worker 10A (212) based on the received identification information. For example, user identifier 40A may read information stored in user data repository 48A to identify worker 10A based on the identification information.

In the technique of FIG. 9, PPE processor 40B identifies one or more articles of PPE 13A for worker 10A that worker 10A is trained to use (214). In some examples, PPE processor 40B may identify the one or more articles of PPE 13A for worker 10A that worker 10A is trained to use based on the identity of worker 10A. Moreover, the one or more articles of PPE may also be articles of PPE required for worker 10A to enter environment 8B including a confined space environment. Thus, the one or more articles of PPE identified by PPE processor 40B may be articles of PPE required to enter the confined space environment that worker 10A has been trained to use.

Avatar generator 40C displays an avatar of worker 10A (216). Displaying the avatar of worker 10A may include equipping the avatar of worker 10A with the one or more articles of PPE for worker 10A that worker 10A is trained to use as identified by PPE processor 40B. The technique of FIG. 9 further includes capturing an image of worker 10A (218) and identifying, by image analyzer 40D, one or more articles of PPE worn by worker 10A in the image (220).

PPE verifier 40E then compares one or more articles of PPE identified for worker 10A that worker 10A is trained to use and the one or more articles of PPE worn by worker 10A in the image and determines whether the one or more articles of PPE identified for worker 10A that worker 10A is trained to use and the one or more articles of PPE worn by worker 10A in the image are the same (222).

If the one or more articles of PPE identified for worker 10A that worker 10A is trained to use and the one or more articles of PPE worn by worker 10A in the image are not the same (NO branch of 222), PPE verifier 40E may present an alert indicating incorrect training of the PPE worn by worker 10A in the image to an attendant (230). For example, in some cases, an attendant may be required to verify PPE compliance of worker 10A prior to worker 10A entering the confined space environment. Such an alert may result in the attendant preventing entry of worker 10A to the confined space (232).

If the one or more articles of PPE identified for worker 10A that worker 10A is trained to use and the one or more articles of PPE worn by worker 10A in the image are the same (YES branch of 222), PPE verifier 40E may present an alert to prompt the attendant to compare the articles of PPE worn by worker 10A to the one or more articles of PPE identified for worker 10A that worker 10A is trained to use (e.g., as identified by PPE processor 40B) (224). The attendant may compare the articles of PPE worn by worker 10A to the one or more articles of PPE identified for worker 10A that worker 10A is trained to use and determine whether the articles of PPE worn by worker 10A to the one or more articles of PPE identified for worker 10A that worker 10A is trained to use are the same (226).

If the attendant determines that the one or more articles of PPE identified for worker 10A that worker 10A is trained to use and the one or more articles of PPE worn by worker 10A are the same (YES branch of 226), the attendant may grant worker 10A entry to the confined space (224). In some examples, the attendant and/or PPEIS 6 may also record PPE compliance of worker 10A.

If the attendant determines that the one or more articles of PPE identified for worker 10A that worker 10A is trained to use and the one or more articles of PPE worn by worker 10A are not the same (NO branch of 226), the attendant may prevent worker 10A entry to the confined space (232). In this way, PPEIS 6 may provide additional verification of PPE compliance of worker 10A in addition to the attendant alone, which may improve PPE compliance, help prevent mistakes in PPE verification, or the like.

Although the methods and systems of the present disclosure have been described with reference to specific examples, those of ordinary skill in the art will readily appreciate that changes and modifications may be made thereto without departing from the spirit and scope of the present disclosure.

In the present detailed description, reference is made to the accompanying drawings, which illustrate specific examples. The illustrated examples are not intended to be exhaustive of all examples according to the disclosure. It is to be understood that other examples may be utilized and structural or logical changes may be made without departing from the scope of the present disclosure. The following detailed description, therefore, is not to be taken in a limiting sense, and the scope of the present disclosure is defined by the appended claims.

Unless otherwise indicated, all numbers expressing feature sizes, amounts, and physical properties used in the specification and claims are to be understood as being modified in all instances by the term “about.” Accordingly, unless indicated to the contrary, the numerical parameters set forth in the foregoing specification and attached claims are approximations that can vary depending upon the desired properties sought to be obtained by those skilled in the art utilizing the teachings disclosed herein.

As used in this specification and the appended claims, the singular forms “a,” “an,” and “the” encompass examples having plural referents, unless the content clearly dictates otherwise. As used in this specification and the appended claims, the term “or” is generally employed in its sense including “and/or” unless the content clearly dictates otherwise.

Spatially related terms, including but not limited to, “proximate,” “distal,” “lower,” “upper,” “beneath,” “below,” “above,” and “on top,” if used herein, are utilized for ease of description to describe spatial relationships of an element(s) to another. Such spatially related terms encompass different orientations of the device in use or operation in addition to the particular orientations depicted in the figures and described herein. For example, if an object depicted in the figures is turned over or flipped over, portions previously described as below or beneath other elements would then be above or on top of those other elements.

As used herein, when an element, component, or layer for example is described as forming a “coincident interface” with, or being “on,” “connected to,” “coupled with,” “stacked on” or “in contact with” another element, component, or layer, it can be directly on, directly connected to, directly coupled with, directly stacked on, in direct contact with, or intervening elements, components or layers may be on, connected, coupled or in contact with the particular element, component, or layer, for example. When an element, component, or layer for example is referred to as being “directly on,” “directly connected to,” “directly coupled with,” or “directly in contact with” another element, there are no intervening elements, components or layers for example.

The techniques of this disclosure may be implemented in a wide variety of computer devices, such as servers, laptop computers, desktop computers, notebook computers, tablet computers, hand-held computers, smart phones, and the like. Any components, modules or units have been described to emphasize functional aspects and do not necessarily require realization by different hardware units. The techniques described herein may also be implemented in hardware, software, firmware, or any combination thereof. Any features described as modules, units or components may be implemented together in an integrated logic device or separately as discrete but interoperable logic devices. In some cases, various features may be implemented as an integrated circuit device, such as an integrated circuit chip or chipset. Additionally, although a number of distinct modules have been described throughout this description, many of which perform unique functions, all the functions of all of the modules may be combined into a single module, or even split into further additional modules. The modules described herein are only exemplary and have been described as such for better ease of understanding.

If implemented in software, the techniques may be realized at least in part by a computer-readable medium comprising instructions that, when executed in a processor, performs one or more of the methods described above. The computer-readable medium may comprise a tangible computer-readable storage medium and may form part of a computer program product, which may include packaging materials. The computer-readable storage medium may comprise random access memory (RAM) such as synchronous dynamic random access memory (SDRAM), read-only memory (ROM), non-volatile random access memory (NVRAM), electrically erasable programmable read-only memory (EEPROM), FLASH memory, magnetic or optical data storage media, and the like. The computer-readable storage medium may also comprise a non-volatile storage device, such as a hard-disk, magnetic tape, a compact disk (CD), digital versatile disk (DVD), Blu-ray disk, holographic data storage media, or other non-volatile storage device.

The term “processor,” as used herein may refer to any of the foregoing structure or any other structure suitable for implementation of the techniques described herein. In addition, in some aspects, the functionality described herein may be provided within dedicated software modules or hardware modules configured for performing the techniques of this disclosure. Even if implemented in software, the techniques may use hardware such as a processor or processing circuitry to execute the software, and a memory to store the software. In any such cases, the computers described herein may define a specific machine that is capable of executing the specific functions described herein. Also, the techniques could be fully implemented in one or more circuits or logic elements, which could also be considered a processor.

Various examples have been described. These and other examples are within the scope of the following claims. 

1. A system comprising: a display; and a computing device coupled to the display, wherein the computing device comprises a memory and one or more processors coupled to the memory, wherein the memory comprises instructions that when executed by the one or more processors: identify, based on at least an identity of a worker, one or more articles of personal protection equipment (PPE) for the worker to use; and display an avatar of the worker, wherein displaying the avatar includes equipping the avatar with the one or more articles of PPE.
 2. The system of claim 1, wherein identifying the one or more articles of PPE for the worker to use comprises: identifying, based on the identity of the worker, a job function of the worker; and selecting, based on at least the job function of the worker, the one or more articles of PPE to be used by the worker from one or more default articles of PPE required for the job function of the worker.
 3. The system of claim 1, wherein identifying the one or more articles of PPE for the worker to use comprises selecting, based on the identity of the worker, one or more articles of PPE that the worker is trained to use.
 4. The system of any of claim 1, wherein displaying the avatar of the worker comprises: at least one of accessing a previously stored avatar of the worker, modifying a previously stored avatar of the worker, or rendering, based on an image of the worker, a new avatar.
 5. The system of any of claim 1, wherein the system further comprises an image capture device, wherein the memory further comprises instructions that when executed by the one or more processors: periodically or continuously capture images of the worker, wherein the images include a first image and a second image, wherein the first image was captured at an earlier time than the second image; compare the first image to the second image; determine, based on the comparison, a movement of the worker; display a moving avatar equipped with the one or more articles of PPE, wherein the moving avatar is configured to mirror the determined movement.
 6. The system of any of claim 1, wherein the system further comprises an image capture device, wherein the memory further comprises instructions that when executed by the one or more processors: capture an image of the worker; analyze the image of the worker to identify one or more articles of PPE worn by the worker in the image; and compare the articles of PPE identified for the worker to use to the articles of PPE worn by the worker in the image.
 7. The system of claim 6 wherein the memory further comprises instructions that when executed by the one or more processors: determine whether each of the articles of PPE worn by the worker in the image are approximately the same size as corresponding articles of PPE of the one or more articles of PPE identified for the worker to use; and if one or more of the articles of PPE worn by the worker in the image are not approximately the same size as corresponding articles of PPE of the one or more articles of PPE identified for the worker to use, present an alert indicating that the article of PPE worn by the worker in the image is different in size from the corresponding article of PPE identified for the worker to use.
 8. The system of claim 6, wherein the memory further comprises instructions that when executed by the one or more processors: determine whether the article of PPE worn by the worker in the image is approximately the same as a corresponding article of PPE identified for the worker to use; determine whether the worker is trained to use any of the articles of PPE that are not the same as corresponding articles of PPE identified for the worker to use; and if the article of PPE worn by the worker in the image is not approximately the same as a corresponding article of PPE identified for the worker to use and if the worker is not trained to use any of the articles of PPE worn by the worker in the image that are not the same as corresponding articles of PPE identified for the worker to use, present an alert indicating that the worker is not trained to use the article of PPE worn by the worker in the image.
 9. The system of any of claim 6, wherein the memory further comprises instructions that when executed by the one or more processors: determine whether any of the articles of PPE identified for the worker to use are missing from the articles of PPE worn by the worker in the image; and present an alert identifying the missing articles of PPE.
 10. The system of any of claim 6, wherein the memory further comprises instructions that when executed by the one or more processors: calculate a confidence level related to the identification accuracy for one or more of the articles of PPE worn by the worker in the image; compare the confidence level to a threshold level of confidence; and present an alert when the confidence level is less than the threshold level of confidence.
 11. The system of any of claim 6, wherein the memory further comprises instructions that when executed by the one or more processors: determine one or more previously worn articles of PPE, wherein the one or more previously worn articles of PPE comprise at least one of an article of PPE previously worn by the worker, an article of PPE previously worn at a work environment, or an article of PPE previously worn for a job function, wherein the work environment comprises a work environment at which the worker will be working, and wherein the job function comprises a job function of the worker; compare the one or more previously worn articles of PPE to the articles of PPE worn by the worker in the image; determine whether at least one of: one or more articles of PPE worn by the worker in the image are different from a corresponding previously worn article of PPE, or a previously worn article of PPE is not present in the one or more articles of PPE worn by the worker in the image; and if one or more articles of PPE worn by the worker in the image are different from a corresponding previously worn article of PPE, present an alert identifying how the articles of PPE are different; or if a previously worn article of PPE is not present in the one or more articles of PPE worn by the worker in the image, present an alert identifying the previously worn article of PPE that is not present in the one or more articles of PPE worn by the worker in the image.
 12. The system of claim 1, wherein the system further comprises one or more input devices, wherein the memory further comprises instructions that when executed by the one or more processors display an indication of a received confirmation of at least one article of PPE identified for the worker to use, wherein the received confirmation was input by the worker using the one or more input devices.
 13. The system of claim 1, wherein the memory further comprises instructions that when executed by the one or more processors identify the worker based on at least one of an identification number, a username, biometric information, photo recognition information, or voice recognition information of the worker.
 14. A method comprising: identifying, based on at least an identity of a worker, one or more articles of personal protection equipment (PPE) for the worker to use; and displaying an avatar of the worker, wherein displaying the avatar includes equipping the avatar with the one or more articles of PPE.
 15. The method of claim 14, wherein identifying the one or more articles of PPE for the worker to use comprises: identifying, based on the identity of the worker, a job function of the worker; and selecting, based on at least the job function of the worker, the one or more articles of PPE to be used by the worker from one or more default articles of PPE required for the job function of the worker.
 16. The method of claim 14, wherein identifying the one or more articles of PPE for the worker to use comprises selecting, based on the identity of the worker, one or more articles of PPE that the worker is trained to use.
 17. The method of claim 14, wherein displaying the avatar of the worker comprises: at least one of accessing a previously stored avatar of the worker, modifying a previously stored avatar of the worker, or rendering, based on an image of the worker, a new avatar.
 18. The method of claim 14, further comprising: periodically or continuously capturing images of the worker, wherein the images include a first image and a second image, wherein the first image was captured at an earlier time than the second image; comparing the first image to the second image; determining, based on the comparison, a movement of the worker; displaying a moving avatar equipped with the one or more articles of PPE, wherein the moving avatar is configured to mirror the determined movement.
 19. The method of claim 14, further comprising: capturing an image of the worker; analyzing the image of the worker to identify one or more articles of PPE worn by the worker in the image; and comparing the articles of PPE identified for the worker to use to the articles of PPE worn by the worker in the image.
 20. The method of claim 19, further comprising: determining whether each of the articles of PPE worn by the worker in the image are approximately the same size as corresponding articles of PPE of the one or more articles of PPE identified for the worker to use; and if one or more of the articles of PPE worn by the worker in the image are not approximately the same size as corresponding articles of PPE of the one or more articles of PPE identified for the worker to use, presenting an alert indicating that the article of PPE worn by the worker in the image is different in size from the corresponding article of PPE identified for the worker to use. 21-42. (canceled) 